ダイアログのビルド

 
 
 

ユーザ インタフェースをプラグインに提供する標準的な方法は、カスタム プロパティを作成して、そのプロパティ ページをダイアログとして使用することです。

データをプロパティ ページのロジックの一部として操作する場合、基本カスタム プロパティセットまたは CustomProperty または CustomProperty オブジェクトを作成する必要があります。このケースは、参照先のデータが実際のシーン データに直接関連付けられておらず、プロパティ ページを閉じた後に削除される場合でも、当てはまります。

ヒント:

メッセージをユーザに表示するだけでよい場合や、Yes/No 型の質問に回答させるだけでよい場合は、カスタムプロパティページのダイアログほどの強力な機能はおそらく必要ありません。 その場合は XSIUIToolkit.MsgBox または UIToolkit::MsgBox 機能の代用を検討してください。

  1. 下記のいずれかの状況が当てはまる場合は XSILoadPlugin および XSIUnloadPlugin コールバックを使用してカスタム プロパティを自己インストール プラグインにします(「プロパティ コールバック」を参照してください)。

    • カスタム プロパティをシーンに保存しようと計画している場合(たとえば、プロパティ ページを閉じた後もデータおよびレイアウトを永続させたい場合)

    • カスタム プロパティを配布しようと計画しているが、知的知識を保護したい場合

  2. CustomProperty オブジェクトを作成して Parameter オブジェクトとともに登録します(「カスタム プロパティを定義する」を参照してください)。

  3. PPGLayout または PPGLayout オブジェクトを使用して CustomProperty オブジェクトのレイアウトを定義し、必要に応じて追加のコントロールまたはロジックを加えます(「プロパティ ページ コントロール」を参照してください)。

  4. ユーザ フレンドリなプレゼンテーションを実現するには、レイアウト調整が必要な場合もあります(「コントロール属性の設定」を参照)。 これには以下が含まれます。

    • 各コントロールに複数の属性を設定できます(PPGItem または PPGItem オブジェクト)。 たとえば、コントロール項目に対して設定できるその他の属性としては、特にサイズが挙げられます。

    • 関連するコントロールをグループ化して、列に整列することができます。 たとえば、ビットマップ ウィジット列を左側に作成し、それに対応するテキスト ボックス列を右側に作成することもできます。

    • ラベル付きボックス領域内の関連するコントロールをグループ化することができます。 たとえば、X、Y および Z の位置を表す 3 つの数値コントロールのセットをグループ化することもできます。

    • 関連タブ コントロールを使って情報をいくつかのページに分割し、アクセスを容易にすることができます。

  5. ロジックを作成して、PPGLayout オブジェクトに関連付けます(「プロパティ コールバック」を参照)。 ロジックには、プロパティ ページ上でユーザ アクションに応答する関数が含まれています。 ロジック コードは、スクリプティングを使って実装できます。この場合は、 ロジック コードをシーンに直接埋め込むことも、スクリプト ファイルに保存することもできます。 それ以外に、C++ コードを使用して、ロジック コードをライブラリ ファイル(*.dll または *.so)内に実装できます。

  6. ヘルプ ページをプロパティ ページに関連づけます(「ヘルプ ファイルのを提供する」を参照してください)。 HTML ファイルにロケーションを設定することができます。 たとえば、カスタマイズ上にヘルプを提供する Web ページへの URL を提供することもできます。